-
Notifications
You must be signed in to change notification settings - Fork 4.2k
feat!: Drop the legacy studio course home page #37454
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
eca64c8 to
b28cc87
Compare
6880a44 to
37dfbc4
Compare
9f406cc to
227e818
Compare
37dfbc4 to
7057510
Compare
7c78f45 to
6ac4201
Compare
ade2299 to
4375bf5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! Just one question.
cms/djangoapps/contentstore/rest_api/v1/serializers/course_waffle_flags.py
Show resolved
Hide resolved
This is the page that lists the courses in studio. This has been replaced by an MFE and the MFE has been on by default since Teak. BREAKING CHANGE: Setting the `legacy_studio.home` waffle flag will no longer work. The code will behave as if this is set to false showing the new studio authoring MFE experience for the course home page. This has been the default since Teak.
This view has been replaced with a new courses API endpoint `/contentstore/v2/home/courses` which has its own tests.
We had a set of i18n tests that testing basic english is working on a page that's going away. It's not necessary. And then we have a skipped test that tests i18n. It would be good to have actual i18n tests and there are some other ones in this file at the block level that do test i18n but since this test isn't actually testing anything novel there's no need to keep it.
Since we're trying to drop the underlying page, switch to the equivalent API views for these contentstore tests.
The url previously pointed to the legacy index.html with the libraries tab loaded. Now it redirects to the new libraries endpoint in the authoring MFE.
4375bf5 to
7c8020d
Compare
kdmccormick
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two nits:
- link the followup in the code (suggestion below)
- reword the commit to "feat!: Drop the legacy studio
coursehome page" . This PR drops the general studio homepage (the course listing) but the commit message makes it sound like it's dropping the course-specific homepage (the outline)
cms/djangoapps/contentstore/rest_api/v1/serializers/course_waffle_flags.py
Show resolved
Hide resolved
| """ | ||
| List all Libraries available to the logged in user | ||
| """ | ||
| data = get_library_context(request) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ack, we might need to keep the legacy libraries home around for Ulmo, let me check on that before you merge.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Confirmed legacy libraries listing is OK to remove
Co-authored-by: Kyle McCormick <kyle@axim.org>
df7bd42 to
1ca24ee
Compare
This adds a CreateLegacyLibrary component. It functions the same as CreateLibrary, but it calls the V1 (legacy) creation REST API rather the V2 (new/beta) REST API. This reinstates, in the MFE, something that was possible using the legacy frontend until it was prematurely removed by openedx/openedx-platform#37454. We plan to re-remove this ability between Ulmo and Verawood as part of: openedx/openedx-platform#32457. So, we have intentionally avoided factoring out common logic between CreateLibrary and CreateLegacyLibrary, ensuring that the latter remains easy to remove and clean up.
This adds a CreateLegacyLibrary component. It functions the same as CreateLibrary, but it calls the V1 (legacy) creation REST API rather the V2 (new/beta) REST API. This reinstates, in the MFE, something that was possible using the legacy frontend until it was prematurely removed by openedx/openedx-platform#37454. We plan to re-remove this ability between Ulmo and Verawood as part of: openedx/openedx-platform#32457. So, we have intentionally avoided factoring out common logic between CreateLibrary and CreateLegacyLibrary, ensuring that the latter remains easy to remove and clean up.
This adds a CreateLegacyLibrary component. It functions the same as CreateLibrary, but it calls the V1 (legacy) creation REST API rather the V2 (new/beta) REST API. This reinstates, in the MFE, something that was possible using the legacy frontend until it was prematurely removed by openedx/openedx-platform#37454. We plan to re-remove this ability between Ulmo and Verawood as part of: openedx/openedx-platform#32457. So, we have intentionally avoided factoring out common logic between CreateLibrary and CreateLegacyLibrary, ensuring that the latter remains easy to remove and clean up.
Part of #36108
The Studio Home page has been replaced for some time. This is code that
drops the ability to fall back to the old experience. The old experience
has not been the default since Teak (Apr 2025).
The waffle flag being removed (
toggles.LEGACY_STUDIO_HOME) is still passed through to an API endpoint, so there is likely frontend changes than need to be done in the future once all the edx-platoform cleanup is completed. This PR drops all the items that are safe to drop without changing interfaces with other services. The work to drop the underlying API that controls which services to use will be done as follow up work in #37497That allows this work to be completed without coupling it to updates upstream.